import { initMixin } from './init'
import { lifecycleMixin } from './vnode/lifecycle'
import { renderMixin } from './vnode/index'
import { initGlobApi } from './global/index'
import { stateMixin } from './initSate'
import { compileToFunction } from './compile/index'
import { createEl } from './vnode/patch'

function Vue(options){
  this._init(options);
}

initMixin(Vue);
lifecycleMixin(Vue);
renderMixin(Vue);
stateMixin(Vue);
initGlobApi(Vue);
// let vml = new Vue({
//   data: {
//     name: 'zhangsan'
//   }
// })
// let render = compileToFunction('<div id="a">{{name}}</div>')
// let vnode = render.call(vml);
// document.body.appendChild(createEl(vnode));
export default Vue;